﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
    CodeBehind="SurveyResult.aspx.cs" Inherits="ankietyzacja.SurvayResult" %>

<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
Wyniki ankiety
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>
Wyniki ankiety
</h2>    

<asp:PlaceHolder ID="ResultSurveyContent" runat="server" > 
    
    <table border="0" cellpadding="3" cellspacing="4" width="100%">
        <tr>
            <td style="width: 300px;">
                Liczba wysłanych ankiet:
            </td>
            <td>
                <asp:Label ID="LiczbaWyslanychLabel" runat="server" CssClass="boldGreen" />
            </td>
        </tr>
        <tr>
            <td style="width: 300px;">
                Liczba wypełnionych ankiet:
            </td>
            <td>
                <asp:Label ID="LiczbaWypelnionychLabel" runat="server" CssClass="boldGreen" />
            </td>
        </tr>
    </table>
    <asp:DetailsView ID="AnkietaDetailsView" runat="server" AutoGenerateRows="False"
        DataKeyNames="ANKIETA_ID" DataSourceID="AnkietaSqlDataSource" Height="50px" Width="100%"
        GridLines="None" CellPadding="3" CellSpacing="4" CommandRowStyle-VerticalAlign="NotSet">
        <Fields>
            <asp:TemplateField HeaderText="Data utworzenia ankiety:" SortExpression="DATAUTWORZENIA"
                HeaderStyle-Width="300" ShowHeader="true">
                <ItemTemplate>
                    <asp:Label ID="Label3" runat="server" Text='<%# Bind("DATAUTWORZENIA") %>' CssClass="boldGreen"></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="Data ważności ankiety:" SortExpression="CZASZYCIA"
                HeaderStyle-Width="300" ShowHeader="true">
                <ItemTemplate>
                    <asp:Label ID="Label3" runat="server" Text='<%# Bind("CZASZYCIA") %>' CssClass="boldGreen"></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="NOTATKA" SortExpression="NOTATKA" ShowHeader="false">
                <ItemTemplate>
                    <asp:Label ID="Label2" runat="server" Text='<%# Bind("NOTATKA") %>' ForeColor="Black"></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="NAZWAANKIETY" SortExpression="NAZWAANKIETY" ShowHeader="false">
                <ItemTemplate>
                    <h2>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("NAZWAANKIETY") %>'></asp:Label></h2>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="OPIS" SortExpression="OPIS" ShowHeader="false">
                <ItemTemplate>
                    <asp:Label ID="Label2" runat="server" Text='<%# Bind("OPIS") %>'></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>
        </Fields>
    </asp:DetailsView>
    <asp:SqlDataSource ID="AnkietaSqlDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ankietyzacjaConnectionString %>"
        SelectCommand="SELECT [NAZWAANKIETY], 
                              [DATAUTWORZENIA], 
                              [CZASZYCIA], 
                              [OPIS], 
                              [ANKIETA_ID], 
                              [NOTATKA]
                         FROM [ANKIETA] 
                        WHERE [CZYWZORZEC] = @CZYWZORZEC
                          AND [ANKIETA_ID] =@ANKIETA_ID ">
        <SelectParameters>
            <asp:Parameter DefaultValue="0" Name="CZYWZORZEC" Type="Int32" />
            <asp:Parameter Name="ANKIETA_ID" Type="Int32" />
        </SelectParameters>
    </asp:SqlDataSource>
    <asp:GridView ID="PytaniaWAnkiecieGridView" runat="server" AutoGenerateColumns="False"
        DataKeyNames="PYTANIEWANKIECIE_ID" DataSourceID="PytaniaWAnkiecieSqlDataSource"
        ShowHeader="False" OnRowDataBound="PytaniaWAnkiecieGridView_RowDataBound" CellSpacing="5"
        CellPadding="5">
        <Columns>
            <asp:TemplateField HeaderText="NUMERKOLEJNY" SortExpression="NUMERKOLEJNY">
                <ItemTemplate>
                    <asp:Label ID="NumerKolejnyPytaniaLabel" runat="server" Text='<%# Bind("NUMERKOLEJNY") %>'></asp:Label>
                </ItemTemplate>
                <ItemStyle CssClass="bold" VerticalAlign="Top" />
            </asp:TemplateField>
            <asp:TemplateField HeaderText="TRESCPYTANIA" SortExpression="TRESCPYTANIA">
                <ItemTemplate>
                    <asp:HiddenField ID="pytanieWAnkiecieIdHiddenField" Value='<%# Bind("PYTANIEWANKIECIE_ID") %>'
                        runat="server" />
                    <asp:Label ID="Label1" runat="server" Text='<%# Bind("TRESCPYTANIA") %>' CssClass="bold"></asp:Label>
                    <asp:GridView ID="OdpowiedziNaPytanieGridView" runat="server" AutoGenerateColumns="False"
                        DataKeyNames="ODPOWIEDZNAPYTANIE_ID" ShowHeader="False" DataSourceID="OdpowiedziNaPytanieSqlDataSource"
                        Width="100%" GridLines="None" OnRowDataBound="OdpowiedziNaPytanieGridView_RowDataBound"
                        OnRowCommand="OdpowiedziNaPytanieGridView_RowCommand">
                        <Columns>
                            <asp:TemplateField HeaderText="NUMERKOLEJNY" SortExpression="NUMERKOLEJNY" Visible="false">
                                <ItemTemplate>
                                    <asp:Label ID="NumerKolejnyOdpowiedziLabel" runat="server" Text='<%# Bind("NUMERKOLEJNY") %>'></asp:Label>
                                    <asp:HiddenField ID="OdpowiedzDowolnaHiddenField" Value='<%# Bind("ODPOWIEDZDOWOLNA_ID") %>' runat="server" />
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="TRESCODPOWIEDZI" SortExpression="TRESCODPOWIEDZI"
                                ItemStyle-Width="60%">
                                <ItemTemplate>
                                    <asp:Label ID="Label1" runat="server" Text='<%# Bind("TRESCODPOWIEDZI") %>' CssClass="bold"></asp:Label>
                                    <asp:LinkButton ID="PokazUkryjDowolneLinkButton" runat="server" CommandName="PokazUkryjDowolne"
                                       CommandArgument='<%# Container.DataItemIndex %>'  
                                        CssClass="commandLink" >Pokaż/Ukryj</asp:LinkButton>
                                    <asp:GridView ID="OdpowiedziDowolneGridView" runat="server" AutoGenerateColumns="False"
                                        ShowHeader="False" DataSourceID="OdpowiedziDowolneSqlDataSource"
                                        Width="100%" GridLines="None" Visible="false">
                                        <Columns>
                                            <asp:TemplateField ItemStyle-Width="5%">
                                                <ItemTemplate>
                                                    &nbsp;
                                                </ItemTemplate>
                                            </asp:TemplateField>
                                            <asp:TemplateField HeaderText="TRESCODPOWIEDZI" SortExpression="TRESCODPOWIEDZI"
                                                ItemStyle-Width="70%">
                                                <ItemTemplate>
                                                  <asp:Label ID="Label1" runat="server" Text='<%# Bind("TRESCODPOWIEDZI") %>' CssClass="bold"></asp:Label>
                                                </ItemTemplate>
                                            </asp:TemplateField>
                                            <asp:TemplateField HeaderText="POWTORZEN" SortExpression="POWTORZEN">
                                                <ItemTemplate>
                                                    (<asp:Label ID="PowtorzenDowolnychLabel" runat="server" Text='<%# Bind("POWTORZEN") %>'
                                                        CssClass="bold"></asp:Label>x)
                                                </ItemTemplate>
                                            </asp:TemplateField>
                                        </Columns>
                                    </asp:GridView>
                    <asp:SqlDataSource ID="OdpowiedziDowolneSqlDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ankietyzacjaConnectionString %>"
                        SelectCommand="SELECT TRESCODPOWIEDZI,
                                              COUNT(1) POWTORZEN
                                         FROM WPISANAODPOWIEDZDOWOLNA w 
                                        WHERE w.ODPOWIEDZDOWOLNA_ID = @ODPOWIEDZDOWOLNA_ID
                                     GROUP BY TRESCODPOWIEDZI
                                     ORDER BY TRESCODPOWIEDZI ">
                        <SelectParameters>
                            <asp:Parameter Name="ODPOWIEDZDOWOLNA_ID" Type="Int32" />
                        </SelectParameters>
                    </asp:SqlDataSource>

                                </ItemTemplate>
                                <ItemStyle Width="60%" />
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="wybranych" SortExpression="wybranych">
                                <ItemTemplate>
                                    <asp:Label ID="WybranychLabel" runat="server" Text='<%# Bind("WYBRANYCH") %>' CssClass="boldGreen"></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField>
                                <ItemTemplate>
                                    <asp:Label ID="ProcentWybranychLabel" runat="server" CssClass="boldGreen"></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField ItemStyle-Width="20%">
                                <ItemTemplate>
                                    <asp:Image ImageUrl="img/pixel_green.PNG" Height="12px" ID="procentWybranychImage" runat="server" /> 
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>
                    <asp:SqlDataSource ID="OdpowiedziNaPytanieSqlDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ankietyzacjaConnectionString %>"
                        SelectCommand="SELECT PYTANIEWANKIECIE_ID,
                                              ODPOWIEDZNAPYTANIE_ID,
                                              null ODPOWIEDZDOWOLNA_ID,
                                              TRESCODPOWIEDZI,
                                              NUMERKOLEJNY, 
                                                (SELECT count(*) 
                                                   FROM WYBRANAODPOWIEDZ w 
                                                  WHERE w.ODPOWIEDZNAPYTANIE_ID = o.ODPOWIEDZNAPYTANIE_ID 
                                                    AND w.WYBRANAODPOWIEDZ=1) wybranych 
                                        FROM ODPOWIEDZNAPYTANIE o 
                                       WHERE o.PYTANIEWANKIECIE_ID = @PYTANIEWANKIECIE_ID 
                                       UNION
                                       SELECT PYTANIEWANKIECIE_ID,
                                              NULL ODPOWIEDZNAPYTANIE_ID,
                                              ODPOWIEDZDOWOLNA_ID,
                                              NAGLOWEKODPOWIEDZIDOWOLNEJ,
                                              999999999, 
                                                (SELECT count(*) 
                                                   FROM WPISANAODPOWIEDZDOWOLNA w 
                                                  WHERE w.ODPOWIEDZDOWOLNA_ID = o.ODPOWIEDZDOWOLNA_ID 
                                                    AND w.TRESCODPOWIEDZI IS NOT NULL) wybranych 
                                        FROM ODPOWIEDZDOWOLNA o 
                                       WHERE o.PYTANIEWANKIECIE_ID = @PYTANIEWANKIECIE_ID 
                                       ORDER BY NUMERKOLEJNY ">
                        <SelectParameters>
                            <asp:Parameter Name="PYTANIEWANKIECIE_ID" Type="Int32" />
                        </SelectParameters>
                    </asp:SqlDataSource>
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>
    <asp:SqlDataSource ID="PytaniaWAnkiecieSqlDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ankietyzacjaConnectionString %>"
        SelectCommand="SELECT P.ANKIETA_ID, 
                              P.PYTANIEWANKIECIE_ID, 
                              P.TRESCPYTANIA, 
                              P.TYPODPOWIEDZI_ID, 
                              P.NUMERKOLEJNY,
                              (SELECT COUNT(1) 
                                 FROM ODPOWIEDZDOWOLNA o
                                WHERE o.PYTANIEWANKIECIE_ID = P.PYTANIEWANKIECIE_ID ) ODPOWIEDZDOWOLNA
                         FROM PYTANIEWANKIECIE P 
                        WHERE P.ANKIETA_ID =@ANKIETA_ID 
                     ORDER BY P.[NUMERKOLEJNY]">
        <SelectParameters>
            <asp:Parameter Name="ANKIETA_ID" Type="Int32" />
        </SelectParameters>
    </asp:SqlDataSource>

        <asp:Button Text="Drukuj wyniki ankiety" ID="Button1" runat="server" 
        onclick="Button1_Click" 
         />
        <asp:Button Text="Drukuj jako PDF" ID="Button2" runat="server" 
        />
</asp:PlaceHolder>

</asp:Content>